1. Field of the Invention
The present invention relates generally to the art of communication networking protocols, and more specifically to a messaging protocol for dynamically managing objects in a distributed computer network environment.
2. Description of the Related Art
Many of today's automated system solutions are realized using multiple distributed computers connected by a communications network. Communications network design may include client-server, peer-to-peer, ring, and other distributed design architectures.
In general, current distributed computer solutions typically involve computer servers, workstations, and personal digital assistants (PDAs) with sophisticated computational and storage capabilities in communication with each other over a high bandwidth transmission media, such as the Internet.
For example, currently deployed electronic mail messaging, or Email, systems exemplify high performance distributed computer solutions constructed using client-server request-response techniques and sophisticated layered protocols, e.g. TCP/IP, FTP, and. SMTP. Email system designs typically configure server devices to perform mail transfer agent (MTA), or simply ‘Email-server’, transfer functionality and client devices to perform mail user agent (MUA), or simply ‘Email-client’ reader functionality. The MUA transfer functionality afforded by current designs, representing a layer of protocol provided in addition to certain underlying protocols, such as TCP/IP, includes receiving, forwarding, and storing electronic mail messages originating from multiple email-server and email-client computers over a network. The MUA reader functionality afforded in these designs includes requesting mail messages from a server and sending mail messages from the client to the server. Client-server system solutions of this type typically have computer resources for executing the required communication protocols, including simple mail transfer (SMTP) and post office protocols (POP), and Internet Message Access Protocol (IMAP), over a TCP/IP network to realize the transfer of electronic messages.
The Email messaging protocols thus require additional overhead, or additional information, for transmission with the original data to facilitate control of the device or application. In short, protocol overhead may increase as the distributed application functional capabilities within the networked distributed computer devices become more complex. In these designs, the multiple layered protocols must accommodate the exchange of complex control and status information. The additional overhead present in these designs require a significant amount of processing resources (i.e. CPU cycles, memory, etc.) to execute these various communication protocols. In short, complex multi-layered communications protocols require additional bandwidth for transmission and additional processing resources to affect the protocols.
In contrast, other communications network architectures are being deployed in greater numbers where the transmission medium may involve simple power and data transmissions. One example of a simplified network uses standard household electrical power wiring for the transmission of data, called the X-10 architecture. X-10 architecture designs exhibit reduced bandwidth capabilities, resulting from the use of electric power lines for data exchange, as compared with the bandwidth available over a complex network such as the Internet. The X-10 architecture and similar architectures may form a network including a wide variety of devices having little or no processing capabilities, each device configured to perform simple tasks including switching devices ON and OFF, and adjusting light dimmers. Other tasks may involve starting dishwashers, clothes dryers, heating and air conditioning systems, and opening and closing garage doors. Current X-10 architecture designs and other simplified networks include devices having minimum functionality and minimum locally stored information.
The X-10 protocol is a power line carrier protocol enabling message exchange between X-10 devices via a household power line. After proper device set up, the X-10 protocol enables control of remote appliances or devices and sensor monitoring. X-10 based controls include switching device ON and OFF, turning up or dimming down a light, and numerous other functions. Sensors can provide X-10 messages to other X-10 devices based on the occurrence of specific events.
In addition, computer interface devices, both wired and wireless (RF based), are currently available. A computer interface device enables control and/or interface with a computing device, enabling automated control and monitoring of the computing device possible. Wireless transceivers can provide an interface between the X-10 devices and a remote control device (manual or computer interface), making it possible for a user or computing device to interface with X-10 devices over the air.
Current techniques available for increasing device functionality typically involve adding processing, memory, and other computer resources to the device in conjunction with use of higher bandwidth transmission media sufficient to realize the additional functions and features. However, as in the X-10 architecture arrangement, the networked devices and associated transmission media capabilities and functionality are relatively fixed and limited according to the architecture standards.
With the introduction of X-10 based computer interfaces, various applications can provide ways to control and monitor appliances around the house. Many approaches tend to result in an ever growing, monolithic program or software module, which can be difficult to maintain and share. In addition, larger programs tend to run on one particular platform, such as Windows or Linux. While certain attempts have been made to create distributed X-10 service modules, including WEB, UPnP, WEB services, DCOM, as well as Jini based, such designs are dependent upon other protocols or OS/Language. For example the WEB may involve HTTP, TCP/IP, and HTML; UPnP may involve HTTP, TCP/IP, UDP, SOAP, and XML; WEB services may involve XML, HTTP, SOAP, WSDL, UDDL; and DCOM is a proprietary Windows technology, where Jini is centered around Java.
The limitations and restrictions inherent in network designs involving simple protocols, such as the X-10 protocol, or even complex protocols, such as TCP/IP, and similar protocols make them unacceptable in heterogeneous, distributed computing solutions and systems. Simple protocols generally operate inefficiently when used with highly intelligent or ‘smart’ devices, such as workstations and personal digital assistants, participating on the same heterogeneous network with ‘dumb’ or limited devices, such as household appliance automation, where the control of the appliance may involve operation of controllable devices such as appliances (dishwashers, ovens, heating and cooling, and lighting systems).
Based on the foregoing, it would be advantageous to provide an efficient messaging protocol for use in simple distributed systems such as a home automation system that overcomes the foregoing drawbacks present in previously known protocols.